From: LukṠTyrychtr Date: Tue, 5 Aug 2025 12:44:55 +0000 (+0200) Subject: status: Set more descriptive labels for quick toggle menu buttons X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~104^2^2~78 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=5d4a53a9746a462dd20c5ca47ade0521454dbd2a;p=gnome-shell.git status: Set more descriptive labels for quick toggle menu buttons Make it clearer to screen reader users what menu buttons do by adding descriptive labels that indicate opening menus for specific toggles. Closes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/8546. Part-of: --- diff --git a/js/ui/status/backlight.js b/js/ui/status/backlight.js index 3768da00d..29a4601eb 100644 --- a/js/ui/status/backlight.js +++ b/js/ui/status/backlight.js @@ -161,6 +161,7 @@ class KeyboardBrightnessToggle extends QuickMenuToggle { super._init({ title: _('Keyboard'), iconName: 'display-brightness-symbolic', + menuButtonAccessibleName: _('Open keyboard brightness menu'), }); this._proxy = new BrightnessProxy(Gio.DBus.session, BUS_NAME, OBJECT_PATH, diff --git a/js/ui/status/bluetooth.js b/js/ui/status/bluetooth.js index 90e7e9f4b..b8a5ea1d4 100644 --- a/js/ui/status/bluetooth.js +++ b/js/ui/status/bluetooth.js @@ -273,7 +273,10 @@ class BluetoothDeviceItem extends PopupMenu.PopupBaseMenuItem { const BluetoothToggle = GObject.registerClass( class BluetoothToggle extends QuickMenuToggle { _init(client) { - super._init({title: _('Bluetooth')}); + super._init({ + title: _('Bluetooth'), + menuButtonAccessibleName: _('Open Bluetooth menu'), + }); this.menu.setHeader('bluetooth-active-symbolic', _('Bluetooth')); diff --git a/js/ui/status/network.js b/js/ui/status/network.js index 466ec615c..ea6026da2 100644 --- a/js/ui/status/network.js +++ b/js/ui/status/network.js @@ -1542,6 +1542,7 @@ class NMVpnToggle extends NMToggle { super(); this.menu.setHeader('network-vpn-symbolic', _('VPN')); + this.menuButtonAccessibleName = _('Open VPN menu'); this.menu.addSettingsAction(_('VPN Settings'), 'gnome-network-panel.desktop'); } @@ -1803,6 +1804,7 @@ class NMWirelessToggle extends NMDeviceToggle { }); this.menu.setHeader('network-wireless-symbolic', _('Wi–Fi')); + this.menuButtonAccessibleName = _('Open Wi–Fi menu'); this.menu.addHeaderSuffix(this._scanningSpinner); this.menu.addSettingsAction(_('All Networks'), 'gnome-wifi-panel.desktop'); @@ -1902,6 +1904,7 @@ class NMWiredToggle extends NMDeviceToggle { super(NM.DeviceType.ETHERNET); this.menu.setHeader('network-wired-symbolic', _('Wired Connections')); + this.menuButtonAccessibleName = _('Open wired connections menu'); this.menu.addSettingsAction(_('Wired Settings'), 'gnome-network-panel.desktop'); } @@ -1917,6 +1920,7 @@ class NMBluetoothToggle extends NMDeviceToggle { super(NM.DeviceType.BT); this.menu.setHeader('network-cellular-symbolic', _('Bluetooth Tethers')); + this.menuButtonAccessibleName = _('Open Bluetooth tethers menu'); this.menu.addSettingsAction(_('Bluetooth Settings'), 'gnome-network-panel.desktop'); } @@ -1937,6 +1941,7 @@ class NMModemToggle extends NMDeviceToggle { super(NM.DeviceType.MODEM); this.menu.setHeader('network-cellular-symbolic', _('Mobile Connections')); + this.menuButtonAccessibleName = _('Open mobile connections menu'); const settingsLabel = _('Mobile Broadband Settings'); this._wwanSettings = this.menu.addSettingsAction(settingsLabel, diff --git a/js/ui/status/powerProfiles.js b/js/ui/status/powerProfiles.js index 3145c2375..31877209c 100644 --- a/js/ui/status/powerProfiles.js +++ b/js/ui/status/powerProfiles.js @@ -41,7 +41,10 @@ const LAST_PROFILE_KEY = 'last-selected-power-profile'; const PowerProfilesToggle = GObject.registerClass( class PowerProfilesToggle extends QuickMenuToggle { _init() { - super._init({title: _('Power Mode')}); + super._init({ + title: _('Power Mode'), + menuButtonAccessibleName: _('Open power profiles menu'), + }); this._profileItems = new Map();